// 从localstotyge 中获取的数据
var Data = [
	{
		id : 1, // 工号
		name : '徐尹恒',  // 姓名
		sex : '女',  // 性别
		dro : '文艺部',  // 部门
		pos : '偶像',  // 职位
		tel : '12346789456'  ,// 电话号码
		is_stay : true
	},
	{
		id : 2, // 工号
		name : '徐一恒',  // 姓名
		sex : '女',  // 性别
		dro : '文艺部',  // 部门
		pos : '偶像',  // 职位
		tel : '12346789456'  ,// 电话号码
		is_stay : true
	},
	{
		id : 3, // 工号
		name : '廖章鱼',  // 姓名
		sex : '男',  // 性别
		dro : '文艺部',  // 部门
		pos : '偶像',  // 职位
		tel : '12346789456'  ,// 电话号码
		is_stay : true
	},
	{
		id : 4, // 工号
		name : '翁世祥',  // 姓名
		sex : '女',  // 性别
		dro : '保安部',  // 部门
		pos : '保安',  // 职位
		tel : '12346789456'  ,// 电话号码
		is_stay : true
	},
	{
		id : 5, // 工号
		name : '江云飞',  // 姓名
		sex : '男',  // 性别
		dro : '保洁部',  // 部门
		pos : '清洁工',  // 职位
		tel : '12346789456'  ,// 电话号码
		is_stay : true
	},
	{
		id : 6, // 工号
		name : '陈道钱',  // 姓名
		sex : '男',  // 性别
		dro : '保安部',  // 部门
		pos : '保安',  // 职位
		tel : '12346789456'  ,// 电话号码
		is_stay : true
	},
	{
		id : 7, // 工号
		name : '肖涵尹',  // 姓名
		sex : '男',  // 性别
		dro : '教育部',  // 部门
		pos : '院长',  // 职位
		tel : '12346789456'  ,// 电话号码
		is_stay : false
	},
	{
		id : 8, // 工号
		name : '帅帅',  // 姓名
		sex : '男',  // 性别
		dro : '教育部',  // 部门
		pos : '院长',  // 职位
		tel : '12346789456'  ,// 电话号码
		is_stay : true,
		is_add : true,
		floor : 1,
		room : 1,
		bed_order : 8
	}
];
// localStorage.setItem("stfdata",JSON.stringify(Data));
// localStorage.setItem("data",JSON.stringify([
// 	{
// 		bmnr : '文艺部',
// 	},
// 	{
// 		bmnr : '可爱部',
// 	},
// 	{
// 		bmnr : '美丽部',
// 	},
// ]));
var live_staffArr = [
	[   // 一楼
	],
	[   // 二楼
	],
	[   // 三楼
	],
	[	// 四楼
	],
	[	// 五楼
	],
	[	// 六楼
	]
];

/* ------------------------------------------------------------------------------------- */

/* 获取住宿表单 */
var list_tr = $("#liveList").children().children();
var getData = [];
var add_data = [];

/* 数据初始化 */
function start(floor,room){
    live_staffArr = [[],[],[],[],[],[]];
	add_data = [];
	var str = localStorage.getItem("stfdata"); // 获取的local中的数据字符串
	getData = JSON.parse(str);
	if(getData!=null){
		for(var i=0;i<getData.length;i++){
			// 将安排的住宿人员存入二维数组中
			if(getData[i].is_stay&&getData[i].is_add){
				live_staffArr[getData[i].floor-1].push(getData[i]);
			}
			
			// 将需要住宿但未安排的人员存入数组中
			if(getData[i].is_stay&&!getData[i].is_add){
				getData[i].is_add = false;
				add_data.push(getData[i]);
			}
		}
	}
	clear();
	search(floor,room);
}

start(1,1);
/* ----------end---------- */

/* 获取html对象节点 */
var cover = $(".cover");

var table = $('#liveList');
var box_alert = $(".domitory-table>.alter");
var content_msg = $(".domitory-table>.alter>.msg");
var content_type = $(".domitory-table>.alter>.type");
var bt_alert_close = $(".domitory-table>.alter>.close");
var bt_alert_sure = $(".domitory-table>.alter>.sure");

var box_jug = $(".domitory-table>.jug");
var bt_jug_sure = $(".domitory-table>.jug>.sure");


var bt_admin_repear = $('.repear-hp');
var bt_admin_close = $('.repear-dom-box>.repear-content>.bt-close');
var bt_admin_sure = $('.repear-dom-box>.repear-content>.bt-sure');
var repear_dom_box = $('.repear-dom-box');

var bt_hp_repear = $('.repear');
var bt_hp_close = $('.repear-hp-box>.repear-content>.bt-close');
var bt_hp_sure = $('.repear-hp-box>.repear-content>.bt-sure');
var repear_hp_box = $('.repear-hp-box');

var bt_search1 = $('.search-item>.staff-search');
var bt_search2 = $('.icon-data>.staff-data');

var box_dep =$('.repear-hp-box');
var bt_dep_change = $('.show-msg');
var bt_dep_ul = $('.department-list');

var box_stay_list = $('.stay-list');
var bt_dep_close = $('.stay-list>.bt-close');
var bt_dep_sure = $('.stay-list>.bt-sure');

var box_add_ul = $('.box-add-ul');

/* -----end----- */

// 数据修饰函数
function msgDeal(index,type){
	
	var msg;

	if(type == 'floor'){
		switch(index){
			case 1 : msg = '一楼';break;
			case 2 : msg = '二楼';break;
			case 3 : msg = '三楼';break;
			case 4 : msg = '四楼';break;
		}
		return msg;
	}
	else if(type == 'room'){
		switch(index){
			case 1 : msg = '01 号';break;
			case 2 : msg = '02 号';break;
			case 3 : msg = '03 号';break;
			case 4 : msg = '04 号';break;
			case 5 : msg = '05 号';break;
			case 6 : msg = '06 号';break;
		}
		return msg;
	}
}

// 清空表格函数
function clear(){
	for(var i=1;i<list_tr.length;i++){
		for(var j=0;j<list_tr.children().length;j++){
			if(j!=5&&j!=6&&j!=8){
				list_tr.eq(i).children().eq(j).text('');
			}	
		}
	}
}

/* 宿舍管理列表修改模块 */
bt_hp_repear.click(function(){
	repear_hp_box.css({
		"display" : "block"
	});
});

bt_hp_close.click(function(){
	repear_hp_box.css({
		"display" : "none"
	});
	box_stay_list.css({
		"display" : "none",
	});
	flag_search2=1;
});

bt_hp_sure.click(function(){
	repear_hp_box.css({
		"display" : "none"
	});
	box_stay_list.css({
		"display" : "none",
	});
	flag_search2=1;
	for(let i=0;i<box_add_ul.children().length;i++){
		floor = box_add_ul.children().eq(i).find('.position').find('input').eq(0).val();
		room = box_add_ul.children().eq(i).find('.position').find('input').eq(1).val();
		let bed = box_add_ul.children().eq(i).find('.position').find('input').eq(2).val();
		let name = box_add_ul.children().eq(i).find('.staff-msg').find('.name').text();
				
		if(floor&&room&&bed){
			for(let j=0;j<add_data.length;j++){
				if(name == add_data[j].name){
					// 更改add_data中的内容
					add_data[j].bed_order = bed;
					add_data[j].floor = floor;
					add_data[j].room = room;
					add_data[j].is_add = true;
					
					// 立刻修改节点内得内容				
					live_staffArr[floor-1].push(add_data[j]);
					
					// 修改localstoryge内的数据
					var oldData = localStorage.getItem("stfdata");
					var oldJSON = JSON.parse(oldData);
					
					for(let k=0;k<oldJSON.length;k++){
						if(add_data[j].id == oldJSON[k].id){
							oldJSON[k].floor = floor;
							oldJSON[k].room = room;
							oldJSON[k].bed_order = bed;
							oldJSON[k].is_add = true;
							localStorage.setItem("stfdata",JSON.stringify(oldJSON));
							break;
						}
					}		
				}
			}	
		}
	}
	
	clear();
	for(var k=1;k<=list_tr.length;k++){
		list_tr.eq(k).children().eq(5).text(parseInt(floor)+'0'+parseInt(room));
	}
	room_bt.html(msgDeal(parseInt(room),'room')+' '+'<span class="caret"></span>');
	floor_bt.html(msgDeal(parseInt(floor),'floor')+' '+'<span class="caret"></span>');
	start(floor,room);
	box_add_ul.html('');
});

bt_search1.click(function(){
	box_stay_list.css({
		"display" : "block",
	});
	box_stay_list.find(".stay-ul").html('');
	var name = bt_dep_change.text().trim();
	for(var i=0;i<add_data.length;i++){
		if(name == add_data[i].dro&&add_data[i].is_add==false){
			box_stay_list.find(".stay-ul").append(
			'   <li>'+
			'	<span class="name">'+ add_data[i].name +'</span>'+
			'	<span class="sex">'+ add_data[i].sex +'</span>'+
			'	<span class="department">'+ add_data[i].dro +'</span>'+
			'	<div class="operation">'+
			'		<span class="add glyphicon glyphicon-plus" aria-hidden="true"></span>'+
			'	</div>'+
			'   </li>'
			);
			add_data[i].is_add == true;
		}
	}
});

var flag_search2=1;
bt_search2.click(function(){
	if(flag_search2 == 1){
		box_stay_list.css({
			"display" : "block",
		});
		flag_search2 = 2;
	}else if(flag_search2 == 2){
		box_stay_list.css({
			"display" : "none",
		});
		flag_search2 = 1;
	}
	
	
	box_stay_list.find('.stay-ul').html('');

	for(var i=0;i<add_data.length;i++){
		if(!add_data[i].is_add){
			box_stay_list.find('.stay-ul').append(
			"   <li>"+
			"		<span class='name'>"+ add_data[i].name +"</span>"+
			"		<span class='sex'>"+ add_data[i].sex +"</span>"+
			"		<span class='department'>"+ add_data[i].dro +"</span>"+
			"		<div class='operation'>"+
			"			<span class='add glyphicon glyphicon-plus' aria-hidden='true'></span>"+
			"			<span class='remove'></span>"+
			"		</div>"+
			"	</li>"
			);
		}
	}	
});

// 宿舍添加入住框
bt_dep_change.click(function(){
	bt_dep_ul.css({
		"display" : "block",
	});
	
	event.stopPropagation();
	
	$('body').click(function(){
		bt_dep_ul.css({
			"display" : "none",
		});
		
		$(this).unbind();
	});
});

var depData;
function addDep(){
	depData = JSON.parse(localStorage.getItem("data"));
	if(depData!=null&&depData.length!=0){
		for(var i=0;i<depData.length;i++){
			bt_dep_ul.append(
				'<li>'+ depData[i].bmnr +'</li>'
			);
		}
		bt_dep_change.html(depData[0].bmnr+' '+'<span class="caret"></span>');
	}else{
		depData = [];
	}
}

addDep();
// 下拉菜单
bt_dep_ul.on("click","li",function(){
	var data = $(this).text();
	bt_dep_change.html(data +' '+'<span class="caret"></span>');
	bt_dep_ul.css({
		"display" : "none",
	});
});

// 添加人员名单框
bt_dep_close.click(function(){
	box_stay_list.css({
		"display" : "none",
	});
	
	flag_search2=1;
	box_stay_list.find('.stay-ul').html('');
});


// 员工添加按钮
box_stay_list.find('.stay-ul').on('click','.add',function(){
	
	var dep = $(this).parent().prev().text();
	var sex = $(this).parent().prev().prev().text();
	var name = $(this).parent().prev().prev().prev().text();
	
	for(var i=0;i<add_data.length;i++){
		if(add_data[i].name == name){
			add_data[i].is_add = true;
		}
	}
	
	box_add_ul.append(
		'<li>'+
		'<div class="staff-msg">'+
		'<span class="name">'+ name +'</span>'+
		'<span class="sex">'+ sex +'</span>'+
		'<span class="department">'+ dep +'</span>'+
		'</div>'+
		'<span class="error"> × </span>'+
		'<div class="position">'+
		'<span>楼</span> <input type="text">'+
		'<span>房</span> <input type="text">'+
		'<span>床</span> <input type="text">'+
		'</div>'+
		'</li>'
	);
	
	$(this).parent().parent().remove();
})

// 员工从安排住宿列表删除按钮
box_add_ul.on('click','.error',function(){
	var name = $(this).prev().children().eq(0).text();
	var sex = $(this).prev().children().eq(1).text();
	var dep = $(this).prev().children().eq(2).text();
	
	for(var i=0;i<add_data.length;i++){
		if(add_data[i].name == name){
			add_data[i].is_add = false;
		}
	}
	$(this).parent().remove();
	
	box_stay_list.find('.stay-ul').append(
	"   <li>"+
	"		<span class='name'>"+ name +"</span>"+
	"		<span class='sex'>"+ sex +"</span>"+
	"		<span class='department'>"+ dep +"</span>"+
	"		<div class='operation'>"+
	"			<span class='add glyphicon glyphicon-plus' aria-hidden='true'></span>"+
	"			<span class='remove'></span>"+
	"		</div>"+
	"	</li>"
	);
});

/* -----end----- */

// 修改模块
// 修改按钮点击事件
table.find(".bt_alert").click(function(){
	var id = $(this).parent().parent().children().eq(0).text();
	cover.css({
		"display" : "block",
	});

	if(id.length == 0){
		box_jug.css({
			"display" : "block",
		});	
			
		bt_jug_sure.click(function(){
			cover.css({
				"display" : "none",
			});
			box_jug.css({
				"display" : "none",
			})	
		});	
		
	}else{
		box_alert.css({
			"display" : "block",
		});
		
		content_type.children().eq(0).addClass('checked');
		content_type.children().eq(1).removeClass('checked');
		content_msg.css({
			display : 'none',
		});
		
		var dataStr = localStorage.getItem("stfdata");
		var dataJSON = JSON.parse(dataStr);
		floor = content_msg.find('input').eq(0).val('');
		room = content_msg.find('input').eq(1).val('');
		bed = content_msg.find('input').eq(2).val('');
		
		bt_alert_close.click(function(){
			box_alert.css({
				"display" : "none",
			});
			cover.css({
				"display" : "none",
			});
		});
		
		bt_alert_sure.unbind("click").click(function(){
			let bed;
					
			if(flag_aler == 0){
				for(var i=0;i<dataJSON.length;i++){
					if(dataJSON[i].id == id){
						dataJSON[i].is_stay = false;
						floor = dataJSON[i].floor;
						room = dataJSON[i].room;
						break;
					}
				}
				localStorage.setItem("stfdata",JSON.stringify(dataJSON));
				start(floor,room);
				floor_bt.html(msgDeal(parseInt(floor),'floor')+' '+'<span class="caret"></span>');
				room_bt.html(msgDeal(parseInt(room),'room')+' '+'<span class="caret"></span>');
				for(var i=1;i<=list_tr.length;i++){
					list_tr.eq(i).children().eq(5).text(floor+'0'+room);
				}
				box_alert.css({
					"display" : "none",
				});
				cover.css({
					"display" : "none",
				});
			}else{
				floor = content_msg.find('input').eq(0).val();
				room = content_msg.find('input').eq(1).val();
				bed = content_msg.find('input').eq(2).val();
						
				if(floor>0&room>0&bed>0){
					for(var j=0;j<dataJSON.length;j++){
						if(dataJSON[j].id == id){
							dataJSON[j].floor = floor;
							dataJSON[j].room = room;
							dataJSON[j].bed_order = bed;
							break;
						}
					}
					localStorage.setItem("stfdata",JSON.stringify(dataJSON));
					start(floor,room);
					floor_bt.html(msgDeal(parseInt(floor),'floor') +' '+'<span class="caret"></span>');
					room_bt.html(msgDeal(parseInt(room),'room') +' '+'<span class="caret"></span>');
					for(var i=1;i<=list_tr.length;i++){
						list_tr.eq(i).children().eq(5).text(floor+'0'+room);
					}
					box_alert.css({
						"display" : "none",
					});
					cover.css({
						"display" : "none",
					});
					flag_aler=0;
				}else{
					console.log(1);
					alert('请正确输入数据');
					
					content_msg.find('input').eq(0).val('');
					content_msg.find('input').eq(1).val('');
					content_msg.find('input').eq(2).val('');
				}
			}
		});
	}
});

var flag_aler = 0;
content_type.children().click(function(){
	for(var i=0;i<content_type.children().length;i++){
		content_type.children().eq(i).removeClass('checked');
	}
	$(this).addClass("checked");
	flag_aler = $(this).index();
	if(flag_aler==0){
		content_msg.css({
			"display" : "none", 
		});
	}else{
		content_msg.css({
			"display" : "block", 
		});
	}
});

/*  查询模块  */
var floor=1,room=1;  // 获取到楼层号和房间号
var floor_bt = $('.floor-bt');  // 楼层按钮
var room_bt = $('.room-bt');  // 房间按钮
var floor_li = $('.floorList').children();  // 楼层选项
var room_li = $('.roomList').children();  // 房间选项

var search_input = $(".search").find("input");
var search_bt = $(".search").find("span");

// 数据查询
function search(floor,room){
	var bed_order;
	for(var i=0;i<live_staffArr[floor-1].length;i++){
		if(live_staffArr[floor-1][i].room == room){
			bed_order = live_staffArr[floor-1][i].bed_order;
			list_tr.eq(bed_order).children().eq(0).text(live_staffArr[floor-1][i].id);
			list_tr.eq(bed_order).children().eq(1).text(live_staffArr[floor-1][i].name);
			list_tr.eq(bed_order).children().eq(2).text(live_staffArr[floor-1][i].sex);
			list_tr.eq(bed_order).children().eq(3).text(live_staffArr[floor-1][i].dro);
			list_tr.eq(bed_order).children().eq(4).text(live_staffArr[floor-1][i].pos);
			list_tr.eq(bed_order).children().eq(7).text(live_staffArr[floor-1][i].tel);
		}
	}
}

search_bt.click(function(){
	var is_have = false;
	
	if(search_input.val().length!=0){
		for(var i=0;i<getData.length;i++){
			if(search_input.val() == getData[i].name){
				if(getData[i].floor!=undefined&&getData[i].is_stay==true){
					floor = getData[i].floor;
					room = getData[i].room;
					
					floor_bt.html(msgDeal(parseInt(floor),'floor')+' '+'<span class="caret"></span>');
					room_bt.html(msgDeal(parseInt(room),'room')+' '+'<span class="caret"></span>');
					for(var i=1;i<=list_tr.length;i++){
						list_tr.eq(i).children().eq(5).text(parseInt(floor)+'0'+parseInt(room));
					}
					clear();
					search(floor,room);
					is_have = true;
				}
			}
		}
		if(!is_have){
			alert("查无此人")
		}
		search_input.val('');
	}
});

// 楼层和房间选项按钮事件
floor_li.click(function(){
	floor = $(this).index()+1;
	floor_bt.html(msgDeal(floor,'floor')+' '+'<span class="caret"></span>');
	
	for(var i=1;i<=list_tr.length;i++){
		list_tr.eq(i).children().eq(5).text(parseInt(floor)+'0'+parseInt(room));
	}
	clear();
	search(floor,room);
});

room_li.click(function(){
	room = $(this).index()+1;
	room_bt.html(msgDeal(room,'room')+' '+'<span class="caret"></span>');
	
	for(var i=1;i<=list_tr.length;i++){
		list_tr.eq(i).children().eq(5).text(parseInt(floor)+'0'+parseInt(room));
	}
	clear();
	search(floor,room);
})

/* -----end----- */
